package com.guodefu.demo.service.Impl;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;

@Service
public class RedisService {

    private final RedisTemplate<String, String> redisTemplate;

    /**
     * 在 Spring Boot 中，使用构造函数注入时，通常不需要显式添加 @Autowired 注解，因为 Spring 会自动处理。
     * 但是，为了更清晰地表达依赖注入，特别是在构造函数注入中有多个参数时，添加 @Autowired 注解是个好习惯。
     */
    @Autowired
    public RedisService(RedisTemplate<String, String> redisTemplate) {
        this.redisTemplate = redisTemplate;
    }

    public void setValue(String key, String value) {
        redisTemplate.opsForValue().set(key, value);
    }

    public String getValue(String key) {
        return redisTemplate.opsForValue().get(key);
    }
}

